1149A - Prefix Sum Primes - CodeForces Solution


constructive algorithms greedy math number theory *1200

Please click on ads to support us..

Python Code:

n = int(input())
d = input()
a = [int(x) for x in d.split()]
a1 = a.count(1)
a2 = a.count(2)
if a1==0 or a2==0:
    print(d)
else:
    l = [2,1]+[2 for i in range(a2-1)]+[1 for i in range(a1-1)]
    print(" ".join(map(str,l)))
    

C++ Code:

#define ll long long
#define MAXN 200010
#define INF 0x3f3f3f3f
#include <bits/stdc++.h>
using namespace std;

int main(){
#ifdef _DEBUG
    freopen("in.txt","r",stdin);
    //freopen("out.txt","w",stdout);
#endif
#define int ll
    ios::sync_with_stdio(false);
    cin.tie(0);

    int n;
    cin >> n;
    int one = 0;
    for (int i = 0; i < n; ++i) {
        int x;
        cin >> x;
        if (x == 1) {
            ++one;
        }
    }
    if (one < n) {
        cout << "2 ";
        --n;
    }
    if (one) {
        cout << "1 ";
        --n;
        --one;
    }
    for (int i = 0; i < n - one; ++i) {
        cout << "2 ";
    }
    for (int i = 0; i < one; ++i) {
        cout << "1 ";
    }

    cout << endl;

    return 0;
}


Comments

Submit
0 Comments
More Questions

742A - Arpa’s hard exam and Mehrdad’s naive cheat
1492A - Three swimmers
1360E - Polygon
1517D - Explorer Space
1230B - Ania and Minimizing
1201A - Important Exam
676A - Nicholas and Permutation
431A - Black Square
474B - Worms
987B - High School Become Human
1223A - CME
1658B - Marin and Anti-coprime Permutation
14B - Young Photographer
143A - Help Vasilisa the Wise 2
320A - Magic Numbers
1658A - Marin and Photoshoot
514A - Chewbaсca and Number
382A - Ksenia and Pan Scales
734B - Anton and Digits
1080A - Petya and Origami
1642D - Repetitions Decoding
1440A - Buy the String
1658F - Juju and Binary String
478A - Initial Bet
981A - Antipalindrome
365A - Good Number
1204B - Mislove Has Lost an Array
1409D - Decrease the Sum of Digits
1476E - Pattern Matching
1107A - Digits Sequence Dividing